package src.multithreading;

public class TestStop implements Runnable{
    //线程中定义线程体使用的标识
    private boolean flag = true;

    public static void main(String[] args) {
        TestStop testStop = new TestStop();
        testStop.run();
        //重置flag位TRUE
        testStop.flag = true;
        //这是 直接调用方法，就像你调用普通的 Java 方法一样。这不会启动一个新的线程。
        //效果： 它会在 当前线程（即main线程）中执行 run() 方法的代码。

        new Thread(testStop).start();

    }
    @Override
    public void run() {
        int i = 0;
        //线程体使用该标识
        while (flag){
            System.out.println("run...thread"+i++);
            if(i>=10){
                stop();
            }

        }
    }
    public void stop(){
        this.flag = false;
    }
}
